package com.smh.a01IOStreamDemo1;

import java.io.FileInputStream;
import java.io.IOException;

public class IOStreamDemo4 {
    public static void main(String[] args) throws IOException {
//1.创建字节输入流对象
// 细节1:如果文件不存在，就直接报错。
//Java为什么会这么设计呢?
//输出流:不存在，创建把数据写到文件当中
//输入流:不存在，而是报错呢?
//因为创建出来的文件是没有数据的，没有任何意义。所以Java就没有设计这种无意义的逻辑，文件不存在直接报错
//
// 程序中最重要的是:数据。
//2.写数据
//细节1:一次读一个字节，读出来的是数据在ASCII上对应的数字细节2:读到文件末尾了，read方法返回-1。
//3.释放资源
//细节:每次使用完流之后都要释放资源
        FileInputStream fis = new FileInputStream("day26-code\\file\\a.txt");

        //读取一个数据,传回的是Ascll码
        char read = (char) fis.read();
        System.out.println(read);
        //读所有
        while (true) {
            int read1 = fis.read();
            if (read1 == -1) {
                break;
            }
            System.out.print((char) read1);
        }

        fis.close();

    }
}
